package ddta;
/*
 * Class: Tarifa
 * Author : Julio Nevado
 */
import java.util.ArrayList; 

// <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
// #[regen=yes,id=DCE.3355B2FA-923A-45B6-9B69-42C3032804C4]
// </editor-fold> 
public class CtlPaquetes {

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.0E204CAE-08CD-9B06-249A-C090B0B29DCA]
    // </editor-fold> 
    private ArrayList<PaqueteTour> paquetesTour;

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.9A7AB87D-F932-B09A-9640-C424812EA853]
    // </editor-fold> 
    public CtlPaquetes () {
        paquetesTour = new ArrayList<PaqueteTour>();
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,regenBody=yes,id=DCE.4EEBAB71-50B3-F602-71A8-75BD6994CA09]
    // </editor-fold> 
    public ArrayList<PaqueteTour> getPaquetesTour () {
        return paquetesTour;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,regenBody=yes,id=DCE.B6F9D5C4-9328-1D42-6646-16B9E2D82409]
    // </editor-fold> 
    public void setPaquetesTour (ArrayList<PaqueteTour> val) {
        this.paquetesTour = val;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.7435D48C-8B53-AFA9-50E1-08503A240862]
    // </editor-fold> 
    public PaqueteTour buscarPaquete (String codigoPaq) {
        PaqueteTour tour = null;
        if (this.paquetesTour.size() > 0) {
            for (PaqueteTour paq : this.paquetesTour) {
                if (paq.getCodigoTour().equals(codigoPaq)) {
                    tour = paq;
                    break;
                }
            }
        }
        return tour;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.BE990E3A-423A-841F-9545-B6EB826E816B]
    // </editor-fold> 
    public void eliminarPaquete (String codPaquete) {
        PaqueteTour tour = buscarPaquete(codPaquete);
        if (tour != null) {
            this.paquetesTour.remove(tour);
        }
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.01021BE1-38BE-671B-634D-3B4461B901DA]
    // </editor-fold> 
    public void registrarPaqueteTour (String codigoPaq, String nombrePaquete, Agencia agencia, ArrayList<LugarTuristico> lugares, Tarifa tarifa) {
        this.paquetesTour.add(new PaqueteTour(codigoPaq, nombrePaquete, agencia, lugares, tarifa));
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.A2ED1447-56C2-C74A-A341-D54595EB8AAD]
    // </editor-fold> 
    public ArrayList<PaqueteTour> filtrarPaquetes (Agencia agencia) {
        ArrayList<PaqueteTour> filtro = new ArrayList<PaqueteTour>();
        if (this.paquetesTour.size() > 0) {
            for (PaqueteTour p : this.paquetesTour) {
                if (p.getAgencia().equals(agencia)) {
                    filtro.add(p);
                }
            }
        }
        return filtro;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.F59FED24-1A6A-B0FD-E170-FD1BDD6C5C5E]
    // </editor-fold> 
    public void actualizarPaquete (String codPaq, String nombrePaquete, Agencia agencia, ArrayList<LugarTuristico> klugares, Tarifa tarifa) {
        PaqueteTour paquete = this.buscarPaquete(codPaq);
        if (paquete != null) {
            paquete.setNombrePaquete(nombrePaquete);
            paquete.setAgencia(agencia);
            paquete.setLugaresTuristicos(klugares);
            paquete.setTarifa(tarifa);
        }
    }

}

